package com.shop.cereshop.business.service.tool;

import com.shop.cereshop.business.page.buyer.BuyerUser;
import com.shop.cereshop.business.page.tool.ShopCrowdDetail;
import com.shop.cereshop.business.param.tool.ShopCrowdGetAllParam;
import com.shop.cereshop.business.param.tool.ShopCrowdGetByIdParam;
import com.shop.cereshop.business.param.tool.ShopCrowdSaveParam;
import com.shop.cereshop.business.param.tool.ShopCrowdUpdateParam;
import com.shop.cereshop.commons.domain.business.CerePlatformBusiness;
import com.shop.cereshop.commons.domain.common.Page;
import com.shop.cereshop.commons.exception.CoBusinessException;

import java.util.List;

public interface CereShopCrowdService {
    void save(ShopCrowdSaveParam param, CerePlatformBusiness user) throws CoBusinessException;

    void update(ShopCrowdUpdateParam param, CerePlatformBusiness user) throws CoBusinessException;

    void delete(ShopCrowdGetByIdParam param, CerePlatformBusiness user) throws CoBusinessException;

    ShopCrowdDetail getById(Long shopCrowdId) throws CoBusinessException;

    Page getAll(ShopCrowdGetAllParam param) throws CoBusinessException;

    List<BuyerUser> getUsers(Long shopCrowdId) throws CoBusinessException;

    String findUserIds(Long shopCrowdId);

    Page selectCrowd(ShopCrowdGetAllParam param) throws CoBusinessException;
}
